package com.ruoyi.qsng.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.List;

/**
 * 交流中心对象 k_clearinghouse
 *
 * @author kanglou
 * @date 2023-06-07
 */
@Data
@ApiModel("交流中心对象 k_clearinghouse")
public class KClearinghouse extends BaseEntity {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("是否审核通过  0否1是")
    private String state;

    @ApiModelProperty("原因")
    private String reason;

    @Excel(name = "标题")
    @ApiModelProperty("标题")
    private String title;

    @Excel(name = "图片")
    @ApiModelProperty("图片,多个逗号隔开")
    private String image;

    /**
     * 内容
     */
    @Excel(name = "内容")
    @ApiModelProperty("内容")
    private String content;

    /**
     * 积分
     */
    @Excel(name = "积分")
    @ApiModelProperty("积分")
    private Integer integral;

    /**
     * 查看数量
     */
    @Excel(name = "查看数量")
    @ApiModelProperty("查看数量")
    private Integer viewCount;

    /**
     * 主键
     */
    @ApiModelProperty("主键")
    private String id;

    @ApiModelProperty("业务字段--用户头像")
    private String userHead;

    @ApiModelProperty("业务字段--用户昵称")
    private String userName;

    @ApiModelProperty("业务字段--点赞量")
    private Long likeNum;

    @ApiModelProperty("业务字段--评论量")
    private Long commentNum;

    @ApiModelProperty("业务字段--是否点赞")
    private Boolean isLike;

    @ApiModelProperty("是否关注，0为未关注， 1为已关注")
    private Integer isFollowed;

    @ApiModelProperty("评论列表")
    private List<KClearinghouseComment> kClearinghouseCommentList;


    public void setContent(String content) {
        this.content = content;
    }

    public String getContent() {
        return content;
    }

    public void setIntegral(Integer integral) {
        this.integral = integral;
    }

    public Integer getIntegral() {
        return integral;
    }

    public void setViewCount(Integer viewCount) {
        this.viewCount = viewCount;
    }

    public Integer getViewCount() {
        return viewCount;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("content", getContent())
                .append("integral", getIntegral())
                .append("viewCount", getViewCount())
                .append("id", getId())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
